<?xml version="1.0" encoding="UTF-8"?>
<model modelUID="r:f2979ad2-255d-40b9-b206-d8f60b85dae8(de.compago.mps.bean_ext.generator.template.main@generator)">
  <persistence version="3" />
  <refactoringHistory />
  <language namespace="b401a680-8325-4110-8fd3-84331ff25bef(jetbrains.mps.lang.generator)" />
  <language namespace="d7706f63-9be2-479c-a3da-ae92af1e64d5(jetbrains.mps.lang.generator.generationContext)" />
  <language namespace="f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage)" />
  <language namespace="7a5dda62-9140-4668-ab76-d5ed1746f2b2(jetbrains.mps.lang.typesystem)" />
  <language namespace="ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core)" />
  <language namespace="0719b181-fc32-471c-82d3-414b396127a5(de.compago.mps.bean_ext)" />
  <language namespace="83888646-71ce-4f1c-9c53-c54016f6ad4f(jetbrains.mps.baseLanguage.collections)" />
  <language namespace="fd392034-7849-419d-9071-12563d152375(jetbrains.mps.baseLanguage.closures)" />
  <language namespace="13744753-c81f-424a-9c1b-cf8943bf4e86(jetbrains.mps.lang.sharedConcepts)" />
  <language namespace="760a0a8c-eabb-4521-8bfd-65db761a9ba3(jetbrains.mps.baseLanguage.logging)" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902ba(jetbrains.mps.lang.sharedConcepts.constraints)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590292(jetbrains.mps.lang.structure.structure)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902e8(jetbrains.mps.lang.generator.structure)" version="2" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902f3(jetbrains.mps.lang.generator.generationContext.structure)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902e2(jetbrains.mps.lang.generator.constraints)" version="16" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c8959028c(jetbrains.mps.lang.structure.constraints)" version="11" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902bc(jetbrains.mps.lang.sharedConcepts.structure)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902ca(jetbrains.mps.baseLanguage.structure)" version="3" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590334(jetbrains.mps.baseLanguage.closures.constraints)" version="2" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902c1(jetbrains.mps.baseLanguage.constraints)" version="83" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590283(jetbrains.mps.lang.core.constraints)" version="2" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902fb(jetbrains.mps.lang.smodel.constraints)" version="21" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902db(jetbrains.mps.baseLanguage.blTypes.constraints)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590301(jetbrains.mps.lang.smodel.structure)" version="16" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590338(jetbrains.mps.baseLanguage.closures.structure)" version="3" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902ae(jetbrains.mps.lang.typesystem.constraints)" version="17" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590340(jetbrains.mps.lang.pattern.constraints)" version="2" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590345(jetbrains.mps.lang.pattern.structure)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c8959033d(jetbrains.mps.lang.annotations.structure)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c89590328(jetbrains.mps.baseLanguage.collections.constraints)" version="6" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c895902b4(jetbrains.mps.lang.typesystem.structure)" version="3" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c8959032e(jetbrains.mps.baseLanguage.collections.structure)" version="7" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c8959034b(jetbrains.mps.lang.quotation.structure)" version="0" />
  <languageAspect modelUID="r:00000000-0000-4000-0000-011c8959057f(jetbrains.mps.baseLanguage.logging.structure)" version="0" />
  <languageAspect modelUID="r:6928a2c9-f423-4d21-a0cc-742534983b81(de.compago.mps.bean_ext.structure)" version="0" />
  <devkit namespace="2677cb18-f558-4e33-bc38-a5139cee06dc(jetbrains.mps.devkit.language-design)" />
  <maxImportIndex value="5" />
  <import index="2" modelUID="f:java_stub#java.lang(java.lang@java_stub)" version="-1" />
  <import index="4" modelUID="f:java_stub#jetbrains.mps.util(jetbrains.mps.util@java_stub)" version="-1" />
  <import index="5" modelUID="r:4cbceb22-f19a-4b7a-9cc0-1cd96b6d6fb2(de.compago.mps.bean_ext.behavior)" version="-1" />
  <visible index="2" modelUID="r:6928a2c9-f423-4d21-a0cc-742534983b81(de.compago.mps.bean_ext.structure)" />
  <visible index="3" modelUID="r:00000000-0000-4000-0000-011c895902ca(jetbrains.mps.baseLanguage.structure)" />
  <visible index="4" modelUID="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" />
  <node type="jetbrains.mps.lang.generator.structure.MappingConfiguration" id="366883146281885428">
    <property name="name" value="main" />
    <node role="weavingMappingRule" type="jetbrains.mps.lang.generator.structure.Weaving_MappingRule" id="8818272836599383048">
      <link role="applicableConcept" targetNodeId="2v.9111793454351686730" resolveInfo="BeanCreator" />
      <node role="contextNodeQuery" type="jetbrains.mps.lang.generator.structure.Weaving_MappingRule_ContextNodeQuery" id="8818272836599383050">
        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836599383051">
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="8818272836599417965">
            <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="8818272836599417966">
              <property name="name" value="relevantParent" />
              <node role="type" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="8818272836599417967" />
              <node role="initializer" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836599417970">
                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8818272836599417969" />
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_GetParentOperation" id="8818272836599417974" />
              </node>
            </node>
          </node>
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.WhileStatement" id="8818272836599417976">
            <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836599417978">
              <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836599417989">
                <node role="expression" type="jetbrains.mps.baseLanguage.structure.AssignmentExpression" id="8818272836599417991">
                  <node role="lValue" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="8818272836599417990">
                    <link role="variableDeclaration" targetNodeId="8818272836599417966" resolveInfo="relevantParent" />
                  </node>
                  <node role="rValue" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836599417995">
                    <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="8818272836599417994">
                      <link role="variableDeclaration" targetNodeId="8818272836599417966" resolveInfo="relevantParent" />
                    </node>
                    <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_GetParentOperation" id="8818272836599417999" />
                  </node>
                </node>
              </node>
            </node>
            <node role="condition" type="jetbrains.mps.baseLanguage.structure.NotExpression" id="8818272836599417979">
              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836599417982">
                <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="8818272836599417981">
                  <link role="variableDeclaration" targetNodeId="8818272836599417966" resolveInfo="relevantParent" />
                </node>
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_IsInstanceOfOperation" id="8818272836599417986">
                  <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="8818272836599417988">
                    <link role="conceptDeclaration" targetNodeId="3v.1068390468198" resolveInfo="ClassConcept" />
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.AssertStatement" id="8818272836599418002">
            <node role="condition" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836599418005">
              <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="8818272836599418004">
                <link role="variableDeclaration" targetNodeId="8818272836599417966" resolveInfo="relevantParent" />
              </node>
              <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_IsInstanceOfOperation" id="8818272836599418009">
                <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="8818272836599681827">
                  <link role="conceptDeclaration" targetNodeId="3v.1068390468198" resolveInfo="ClassConcept" />
                </node>
              </node>
            </node>
          </node>
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836599417951">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836599417953">
              <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="8818272836599417952" />
              <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetCopiedOutputByInput" id="8818272836599417957">
                <node role="inputNode" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="8818272836599418000">
                  <link role="variableDeclaration" targetNodeId="8818272836599417966" resolveInfo="relevantParent" />
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="ruleConsequence" type="jetbrains.mps.lang.generator.structure.TemplateDeclarationReference" id="3790509900286522497">
        <link role="template" targetNodeId="3790509900286517991" resolveInfo="weave_BeanCreation_methods2" />
      </node>
    </node>
    <node role="mappingLabel" type="jetbrains.mps.lang.generator.structure.MappingLabelDeclaration" id="4629721268259790268">
      <property name="name" value="beanClass" />
      <link role="sourceConcept" targetNodeId="2v.4947839308727780236" resolveInfo="BeanDeclaration" />
      <link role="targetConcept" targetNodeId="3v.1068390468198" resolveInfo="ClassConcept" />
    </node>
    <node role="mappingLabel" type="jetbrains.mps.lang.generator.structure.MappingLabelDeclaration" id="8818272836600509172">
      <property name="name" value="beanCreationMethod" />
      <link role="sourceConcept" targetNodeId="2v.9111793454351686730" resolveInfo="BeanCreator" />
      <link role="targetConcept" targetNodeId="3v.1068580123165" resolveInfo="InstanceMethodDeclaration" />
    </node>
    <node role="mappingLabel" type="jetbrains.mps.lang.generator.structure.MappingLabelDeclaration" id="5965199080352902068">
      <property name="name" value="beanGetter" />
      <link role="sourceConcept" targetNodeId="2v.6613224131717846917" resolveInfo="PropertyDeclaration" />
      <link role="targetConcept" targetNodeId="3v.1068580123165" resolveInfo="InstanceMethodDeclaration" />
    </node>
    <node role="mappingLabel" type="jetbrains.mps.lang.generator.structure.MappingLabelDeclaration" id="5965199080352902069">
      <property name="name" value="beanSetter" />
      <link role="sourceConcept" targetNodeId="2v.6613224131717846917" resolveInfo="PropertyDeclaration" />
      <link role="targetConcept" targetNodeId="3v.1068580123165" resolveInfo="InstanceMethodDeclaration" />
    </node>
    <node role="reductionMappingRule" type="jetbrains.mps.lang.generator.structure.Reduction_MappingRule" id="4629721268259685776">
      <link role="applicableConcept" targetNodeId="2v.9111793454352250078" resolveInfo="BeanType" />
      <node role="ruleConsequence" type="jetbrains.mps.lang.generator.structure.TemplateDeclarationReference" id="4629721268259687958">
        <link role="template" targetNodeId="4629721268259687956" resolveInfo="reduce_BeanType" />
      </node>
    </node>
    <node role="reductionMappingRule" type="jetbrains.mps.lang.generator.structure.Reduction_MappingRule" id="872970255305206935">
      <link role="applicableConcept" targetNodeId="3v.1145552977093" resolveInfo="GenericNewExpression" />
      <node role="conditionFunction" type="jetbrains.mps.lang.generator.structure.BaseMappingRule_Condition" id="872970255305206998">
        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="872970255305206999">
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="872970255305207000">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="872970255305207001">
              <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="872970255305207002">
                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="872970255305207003" />
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="872970255305207004">
                  <link role="link" targetNodeId="3v.1145553007750" />
                </node>
              </node>
              <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_IsInstanceOfOperation" id="872970255305207005">
                <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="872970255305207006">
                  <link role="conceptDeclaration" targetNodeId="2v.9111793454351686730" resolveInfo="BeanCreator" />
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="ruleConsequence" type="jetbrains.mps.lang.generator.structure.InlineTemplate_RuleConsequence" id="9162224485038704137">
        <node role="templateNode" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038704139">
          <node role="operand" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="9162224485038704813">
            <node role="creator" type="jetbrains.mps.baseLanguage.structure.ClassCreator" id="9162224485038727994">
              <link role="baseMethodDeclaration" targetNodeId="366883146281888135" resolveInfo="BeanClass" />
            </node>
            <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="9162224485038728580">
              <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="9162224485038728581">
                <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="9162224485038728582">
                  <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="9162224485038728583">
                    <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="9162224485038728584">
                      <property name="name" value="thisExp" />
                      <node role="type" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="9162224485038728585">
                        <link role="concept" targetNodeId="3v.1070475354124" resolveInfo="ThisExpression" />
                      </node>
                      <node role="initializer" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="9162224485038728586">
                        <node role="creator" type="jetbrains.mps.lang.smodel.structure.SNodeCreator" id="9162224485038728587">
                          <node role="createdType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="9162224485038728588">
                            <link role="concept" targetNodeId="3v.1070475354124" resolveInfo="ThisExpression" />
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                  <node role="statement" type="jetbrains.mps.baseLanguage.structure.ReturnStatement" id="9162224485038728589">
                    <node role="expression" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="9162224485038728590">
                      <link role="variableDeclaration" targetNodeId="9162224485038728584" resolveInfo="thisExp" />
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="operation" type="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" id="9162224485038727995">
            <link role="baseMethodDeclaration" targetNodeId="8579527048878654460" resolveInfo="setter" />
            <node role="actualArgument" type="jetbrains.mps.baseLanguage.structure.StringLiteral" id="9162224485038727996">
              <property name="value" value="" />
              <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcListMacro" id="9162224485038728609">
                <node role="sourceNodesQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodesQuery" id="9162224485038728610">
                  <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="9162224485038728611">
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="9162224485038728612">
                      <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="9162224485038728613">
                        <property name="name" value="result" />
                        <node role="type" type="jetbrains.mps.baseLanguage.collections.structure.ListType" id="9162224485038728614">
                          <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="9162224485038728615">
                            <link role="concept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                          </node>
                        </node>
                        <node role="initializer" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="9162224485038728616">
                          <node role="creator" type="jetbrains.mps.baseLanguage.collections.structure.ListCreatorWithInit" id="9162224485038728617">
                            <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="9162224485038728618">
                              <link role="concept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="9162224485038728619">
                      <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="9162224485038728620">
                        <property name="name" value="variables" />
                        <node role="type" type="jetbrains.mps.baseLanguage.collections.structure.ListType" id="9162224485038728621">
                          <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="9162224485038728622">
                            <link role="concept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                          </node>
                        </node>
                        <node role="initializer" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038728623">
                          <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="9162224485038728624" />
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_GetDescendantsOperation" id="9162224485038728625">
                            <node role="parameter" type="jetbrains.mps.lang.smodel.structure.OperationParm_Concept" id="9162224485038728626">
                              <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="9162224485038728627">
                                <link role="conceptDeclaration" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                              </node>
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.ReturnStatement" id="9162224485038728628">
                      <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038728629">
                        <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="9162224485038728630">
                          <link role="variableDeclaration" targetNodeId="9162224485038728620" resolveInfo="variables" />
                        </node>
                        <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.SortOperation" id="9162224485038728631">
                          <node role="closure" type="jetbrains.mps.baseLanguage.closures.structure.ClosureLiteral" id="9162224485038728632">
                            <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="9162224485038728633">
                              <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="9162224485038728634">
                                <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038728635">
                                  <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038728636">
                                    <node role="operand" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="9162224485038728637">
                                      <link role="variableDeclaration" targetNodeId="9162224485038728640" resolveInfo="it" />
                                    </node>
                                    <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="9162224485038728638">
                                      <link role="link" targetNodeId="3v.1070568296581" />
                                    </node>
                                  </node>
                                  <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="9162224485038728639">
                                    <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                                  </node>
                                </node>
                              </node>
                            </node>
                            <node role="parameter" type="jetbrains.mps.baseLanguage.collections.structure.SmartClosureParameterDeclaration" id="9162224485038728640">
                              <property name="name" value="it" />
                              <node role="type" type="jetbrains.mps.baseLanguage.structure.WildCardType" id="9162224485038728641" />
                            </node>
                          </node>
                          <node role="ascending" type="jetbrains.mps.baseLanguage.collections.structure.SortDirection" id="9162224485038728642">
                            <property name="value" value="true" />
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
            <node role="referenceMacro$link_attribute$baseMethodDeclaration" type="jetbrains.mps.lang.generator.structure.ReferenceMacro" id="9162224485038728591">
              <node role="referentFunction" type="jetbrains.mps.lang.generator.structure.ReferenceMacro_GetReferent" id="9162224485038728592">
                <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="9162224485038728593">
                  <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="9162224485038728594">
                    <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038728595">
                      <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="9162224485038728596" />
                      <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOutputByLabelAndInput" id="9162224485038728597">
                        <link role="label" targetNodeId="8818272836600509172" resolveInfo="beanCreationMethod" />
                        <node role="inputNode" type="jetbrains.mps.lang.smodel.structure.SNodeTypeCastExpression" id="9162224485038728598">
                          <link role="concept" targetNodeId="2v.9111793454351686730" resolveInfo="BeanCreator" />
                          <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038728599">
                            <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="9162224485038728600" />
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="9162224485038728601">
                              <link role="link" targetNodeId="3v.1145553007750" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
    <node role="reductionMappingRule" type="jetbrains.mps.lang.generator.structure.Reduction_MappingRule" id="5167060784470621559">
      <link role="applicableConcept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
      <node role="ruleConsequence" type="jetbrains.mps.lang.generator.structure.TemplateDeclarationReference" id="5167060784470626998">
        <link role="template" targetNodeId="4012504259766621588" resolveInfo="reduce_LocalVariableDeclaration_param" />
      </node>
      <node role="conditionFunction" type="jetbrains.mps.lang.generator.structure.BaseMappingRule_Condition" id="5167060784470625754">
        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="5167060784470625755">
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="5167060784470625756">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.NotEqualsExpression" id="5167060784470626980">
              <node role="rightExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5167060784470626989">
                <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5167060784470626984">
                  <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5167060784470626983" />
                  <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="5167060784470626988">
                    <link role="link" targetNodeId="3v.1070568296581" />
                  </node>
                </node>
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_GetAncestorOperation" id="5167060784470626993">
                  <node role="parameter" type="jetbrains.mps.lang.smodel.structure.OperationParm_Concept" id="5167060784470626994">
                    <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="5167060784470626997">
                      <link role="conceptDeclaration" targetNodeId="3v.1068580123165" resolveInfo="InstanceMethodDeclaration" />
                    </node>
                  </node>
                </node>
              </node>
              <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5167060784470625758">
                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5167060784470625757" />
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_GetAncestorOperation" id="5167060784470626975">
                  <node role="parameter" type="jetbrains.mps.lang.smodel.structure.OperationParm_Concept" id="5167060784470626976">
                    <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="5167060784470626979">
                      <link role="conceptDeclaration" targetNodeId="3v.1068580123165" resolveInfo="InstanceMethodDeclaration" />
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
    <node role="reductionMappingRule" type="jetbrains.mps.lang.generator.structure.Reduction_MappingRule" id="5435129762877409802">
      <link role="applicableConcept" targetNodeId="3v.1068498886294" resolveInfo="AssignmentExpression" />
      <node role="ruleConsequence" type="jetbrains.mps.lang.generator.structure.TemplateDeclarationReference" id="5435129762877413998">
        <link role="template" targetNodeId="3790509900286076372" resolveInfo="reduce_AssignmentExpression_Setter" />
      </node>
      <node role="conditionFunction" type="jetbrains.mps.lang.generator.structure.BaseMappingRule_Condition" id="5435129762877414001">
        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="5435129762877414002">
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="5435129762877518755">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.AndExpression" id="5435129762877522957">
              <node role="rightExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5435129762877522979">
                <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5435129762877522974">
                  <node role="operand" type="jetbrains.mps.lang.smodel.structure.SNodeTypeCastExpression" id="5435129762877522972">
                    <link role="concept" targetNodeId="3v.1197027756228" resolveInfo="DotExpression" />
                    <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5435129762877522961">
                      <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5435129762877522960" />
                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="5435129762877522971">
                        <link role="link" targetNodeId="3v.1068498886295" />
                      </node>
                    </node>
                  </node>
                  <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="5435129762877522978">
                    <link role="link" targetNodeId="3v.1197027833540" />
                  </node>
                </node>
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_IsInstanceOfOperation" id="5435129762877522983">
                  <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="5435129762877522985">
                    <link role="conceptDeclaration" targetNodeId="2v.2810096565406086130" resolveInfo="PropertyAccessOperation" />
                  </node>
                </node>
              </node>
              <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5435129762877518756">
                <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5435129762877518757">
                  <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5435129762877518758" />
                  <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="5435129762877522955">
                    <link role="link" targetNodeId="3v.1068498886295" />
                  </node>
                </node>
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_IsInstanceOfOperation" id="5435129762877518760">
                  <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="5435129762877522956">
                    <link role="conceptDeclaration" targetNodeId="3v.1197027756228" resolveInfo="DotExpression" />
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
    <node role="reductionMappingRule" type="jetbrains.mps.lang.generator.structure.Reduction_MappingRule" id="5435129762877522986">
      <link role="applicableConcept" targetNodeId="2v.2810096565406086130" resolveInfo="PropertyAccessOperation" />
      <node role="ruleConsequence" type="jetbrains.mps.lang.generator.structure.TemplateDeclarationReference" id="5435129762877522988">
        <link role="template" targetNodeId="3790509900283270406" resolveInfo="reduce_PropertyAccessOperation_Getter" />
      </node>
    </node>
    <node role="rootMappingRule" type="jetbrains.mps.lang.generator.structure.Root_MappingRule" id="366883146281888141">
      <link role="applicableConcept" targetNodeId="2v.4947839308727780236" resolveInfo="BeanDeclaration" />
      <link role="template" targetNodeId="366883146281888133" resolveInfo="BeanClass" />
      <link role="labelDeclaration" targetNodeId="4629721268259790268" resolveInfo="beanClass" />
    </node>
  </node>
  <node type="jetbrains.mps.baseLanguage.structure.ClassConcept" id="366883146281888133">
    <property name="name" value="BeanClass" />
    <node role="method" type="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" id="8579527048878654460">
      <property name="name" value="setter" />
      <node role="parameter" type="jetbrains.mps.baseLanguage.structure.ParameterDeclaration" id="8579527048878654467">
        <property name="name" value="newValue" />
        <node role="type" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="8579527048878654469">
          <link role="classifier" targetNodeId="2.~Object" resolveInfo="Object" />
          <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="5867973938312270566">
            <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="5867973938312270569">
              <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="5867973938312270570">
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="5867973938312270571">
                  <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5867973938312270572">
                    <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="5867973938312270573">
                      <link role="link" targetNodeId="2v.3223167355424520917" />
                    </node>
                    <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5867973938312270574" />
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="returnType" type="jetbrains.mps.baseLanguage.structure.VoidType" id="8579527048878654461" />
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="8579527048878654462" />
      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8579527048878654463">
        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8579527048878654522">
          <node role="expression" type="jetbrains.mps.baseLanguage.structure.AssignmentExpression" id="8579527048878654529">
            <node role="rValue" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="8579527048878654532">
              <link role="variableDeclaration" targetNodeId="8579527048878654467" resolveInfo="newValue" />
            </node>
            <node role="lValue" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8579527048878654524">
              <node role="operand" type="jetbrains.mps.baseLanguage.structure.ThisExpression" id="8579527048878654523" />
              <node role="operation" type="jetbrains.mps.baseLanguage.structure.FieldReferenceOperation" id="8579527048878654528">
                <link role="fieldDeclaration" targetNodeId="8579527048878652267" resolveInfo="property" />
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.LoopMacro" id="8579527048878758898">
        <link role="mappingLabel" targetNodeId="5965199080352902069" resolveInfo="beanSetter" />
        <node role="sourceNodesQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodesQuery" id="8579527048878758901">
          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8579527048878758902">
            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8579527048878758903">
              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8579527048878758904">
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="8579527048878758905">
                  <link role="link" targetNodeId="2v.6613224131717846924" />
                </node>
                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8579527048878758906" />
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="propertyMacro$property_attribute$name" type="jetbrains.mps.lang.generator.structure.PropertyMacro" id="8579527048878910229">
        <node role="propertyValueFunction" type="jetbrains.mps.lang.generator.structure.PropertyMacro_GetPropertyValue" id="8579527048878910230">
          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8579527048878910231">
            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="668809111076290221">
              <node role="expression" type="jetbrains.mps.lang.smodel.structure.StaticConceptMethodCall" id="668809111076290222">
                <link role="concept" targetNodeId="2v.4947839308727780236" resolveInfo="BeanDeclaration" />
                <link role="baseMethodDeclaration" targetNodeId="5.8818272836601340312" resolveInfo="createSetter" />
                <node role="actualArgument" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="668809111076290223" />
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
    <node role="method" type="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" id="8579527048878654601">
      <property name="name" value="getter" />
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="8579527048878654603" />
      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8579527048878654604">
        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ReturnStatement" id="8579527048878654608">
          <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8579527048878654610">
            <node role="operation" type="jetbrains.mps.baseLanguage.structure.FieldReferenceOperation" id="8579527048878654611">
              <link role="fieldDeclaration" targetNodeId="8579527048878652267" resolveInfo="property" />
            </node>
            <node role="operand" type="jetbrains.mps.baseLanguage.structure.ThisExpression" id="8579527048878654612" />
          </node>
        </node>
      </node>
      <node role="returnType" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="8579527048878654607">
        <link role="classifier" targetNodeId="2.~Object" resolveInfo="Object" />
        <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="5867973938312270577">
          <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="5867973938312270580">
            <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="5867973938312270581">
              <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="5867973938312270582">
                <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5867973938312270583">
                  <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="5867973938312270584">
                    <link role="link" targetNodeId="2v.3223167355424520917" />
                  </node>
                  <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5867973938312270585" />
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.LoopMacro" id="8579527048878758916">
        <link role="mappingLabel" targetNodeId="5965199080352902068" resolveInfo="beanGetter" />
        <node role="sourceNodesQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodesQuery" id="8579527048878758919">
          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8579527048878758920">
            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8579527048878758921">
              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8579527048878758922">
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="8579527048878758923">
                  <link role="link" targetNodeId="2v.6613224131717846924" />
                </node>
                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8579527048878758924" />
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="propertyMacro$property_attribute$name" type="jetbrains.mps.lang.generator.structure.PropertyMacro" id="8579527048878910258">
        <node role="propertyValueFunction" type="jetbrains.mps.lang.generator.structure.PropertyMacro_GetPropertyValue" id="8579527048878910261">
          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8579527048878910262">
            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8579527048878910263">
              <node role="expression" type="jetbrains.mps.baseLanguage.structure.PlusExpression" id="8579527048878910269">
                <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.StringLiteral" id="8579527048878910272">
                  <property name="value" value="get" />
                </node>
                <node role="rightExpression" type="jetbrains.mps.baseLanguage.structure.StaticMethodCall" id="8579527048878910275">
                  <link role="baseMethodDeclaration" targetNodeId="4.~NameUtil.capitalize(java.lang.String):java.lang.String" resolveInfo="capitalize" />
                  <link role="classConcept" targetNodeId="4.~NameUtil" resolveInfo="NameUtil" />
                  <node role="actualArgument" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8579527048878910279">
                    <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8579527048878910276" />
                    <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="8579527048878910285">
                      <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
    <node role="field" type="jetbrains.mps.baseLanguage.structure.FieldDeclaration" id="8579527048878652267">
      <property name="name" value="property" />
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PrivateVisibility" id="8579527048878652268" />
      <node role="type" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="8579527048878654455">
        <link role="classifier" targetNodeId="2.~Object" resolveInfo="Object" />
        <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="5867973938312270555">
          <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="5867973938312270558">
            <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="5867973938312270559">
              <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="5867973938312270560">
                <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5867973938312270561">
                  <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="5867973938312270562">
                    <link role="link" targetNodeId="2v.3223167355424520917" />
                  </node>
                  <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5867973938312270563" />
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.LoopMacro" id="8579527048878758888">
        <node role="sourceNodesQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodesQuery" id="8579527048878758891">
          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8579527048878758892">
            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8579527048878758893">
              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8579527048878758894">
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="8579527048878758895">
                  <link role="link" targetNodeId="2v.6613224131717846924" />
                </node>
                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8579527048878758896" />
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="propertyMacro$property_attribute$name" type="jetbrains.mps.lang.generator.structure.PropertyMacro" id="8579527048878910206">
        <node role="propertyValueFunction" type="jetbrains.mps.lang.generator.structure.PropertyMacro_GetPropertyValue" id="8579527048878910209">
          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8579527048878910210">
            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8579527048878910211">
              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8579527048878910212">
                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="8579527048878910213">
                  <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                </node>
                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8579527048878910214" />
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
    <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="366883146281888134" />
    <node role="constructor" type="jetbrains.mps.baseLanguage.structure.ConstructorDeclaration" id="366883146281888135">
      <node role="returnType" type="jetbrains.mps.baseLanguage.structure.VoidType" id="366883146281888136" />
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="366883146281888137" />
      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="366883146281888138" />
    </node>
    <node role="rootTemplateAnnotation$attribute" type="jetbrains.mps.lang.generator.structure.RootTemplateAnnotation" id="366883146281888139">
      <link role="applicableConcept" targetNodeId="2v.4947839308727780236" resolveInfo="BeanDeclaration" />
    </node>
    <node role="propertyMacro$property_attribute$name" type="jetbrains.mps.lang.generator.structure.PropertyMacro" id="366883146282020095">
      <node role="propertyValueFunction" type="jetbrains.mps.lang.generator.structure.PropertyMacro_GetPropertyValue" id="366883146282020096">
        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="366883146282020097">
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="366883146282022284">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="366883146282022286">
              <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="366883146282022285" />
              <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="366883146282022290">
                <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
  </node>
  <node type="jetbrains.mps.lang.generator.structure.TemplateDeclaration" id="4629721268259687956">
    <property name="name" value="reduce_BeanType" />
    <link role="applicableConcept" targetNodeId="2v.9111793454352250078" resolveInfo="BeanType" />
    <node role="contentNode" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="4629721268259687960">
      <link role="classifier" targetNodeId="366883146281888133" resolveInfo="BeanClass" />
      <node role="templateFragment$attribute" type="jetbrains.mps.lang.generator.structure.TemplateFragment" id="4629721268259687965" />
      <node role="referenceMacro$link_attribute$classifier" type="jetbrains.mps.lang.generator.structure.ReferenceMacro" id="4629721268259687966">
        <node role="referentFunction" type="jetbrains.mps.lang.generator.structure.ReferenceMacro_GetReferent" id="4629721268259687967">
          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="4629721268259687968">
            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="4629721268259794470">
              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4629721268259794472">
                <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="4629721268259794471" />
                <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOutputByLabelAndInput" id="4629721268259794477">
                  <link role="label" targetNodeId="4629721268259790268" resolveInfo="beanClass" />
                  <node role="inputNode" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4629721268259794482">
                    <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="4629721268259794480" />
                    <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="4629721268259795699">
                      <link role="link" targetNodeId="2v.9111793454352250079" />
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
  </node>
  <node type="jetbrains.mps.lang.generator.structure.TemplateDeclaration" id="8818272836599387248">
    <property name="name" value="weave_BeanCreation_methods" />
    <link role="applicableConcept" targetNodeId="2v.9111793454351686730" resolveInfo="BeanCreator" />
    <node role="contentNode" type="jetbrains.mps.baseLanguage.structure.ClassConcept" id="8818272836599418012">
      <property name="name" value="_noname_" />
      <node role="method" type="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" id="8818272836600072627">
        <property name="name" value="creationMethod" />
        <node role="returnType" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="8818272836600074809">
          <link role="classifier" targetNodeId="2.~Object" resolveInfo="Object" />
          <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="8818272836600955162">
            <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="8818272836600955163">
              <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836600955164">
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836600959358">
                  <node role="expression" type="jetbrains.mps.lang.quotation.structure.Quotation" id="8818272836600959359">
                    <node role="quotedNode" type="de.compago.mps.bean_ext.structure.BeanType" id="8818272836600959361">
                      <node role="referenceAntiquotation$link_attribute$bean" type="jetbrains.mps.lang.quotation.structure.ReferenceAntiquotation" id="8818272836600959362">
                        <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836600959365">
                          <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8818272836600959364" />
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="8818272836600959369">
                            <link role="link" targetNodeId="2v.9111793454351686732" />
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
        <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="8818272836600072629" />
        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836600072630">
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="8818272836600074810">
            <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="8818272836600074811">
              <property name="name" value="result" />
              <node role="type" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="8818272836600074812">
                <link role="classifier" targetNodeId="366883146281888133" resolveInfo="BeanClass" />
                <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="8818272836600959371">
                  <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="8818272836600959372">
                    <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836600959373">
                      <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836600959374">
                        <node role="expression" type="jetbrains.mps.lang.quotation.structure.Quotation" id="8818272836600959375">
                          <node role="quotedNode" type="de.compago.mps.bean_ext.structure.BeanType" id="8818272836600959376">
                            <node role="referenceAntiquotation$link_attribute$bean" type="jetbrains.mps.lang.quotation.structure.ReferenceAntiquotation" id="8818272836600959377">
                              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836600959378">
                                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8818272836600959379" />
                                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="8818272836600959380">
                                  <link role="link" targetNodeId="2v.9111793454351686732" />
                                </node>
                              </node>
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
              <node role="initializer" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="8818272836600074814">
                <node role="creator" type="jetbrains.mps.baseLanguage.structure.ClassCreator" id="8818272836600094802">
                  <link role="baseMethodDeclaration" targetNodeId="366883146281888135" resolveInfo="BeanClass" />
                  <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="8818272836601066670">
                    <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="8818272836601066671">
                      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836601066672">
                        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836601068851">
                          <node role="expression" type="jetbrains.mps.lang.quotation.structure.Quotation" id="8818272836601068852">
                            <node role="quotedNode" type="jetbrains.mps.baseLanguage.structure.ClassCreator" id="8818272836601068854">
                              <node role="referenceAntiquotation$link_attribute$baseMethodDeclaration" type="jetbrains.mps.lang.quotation.structure.ReferenceAntiquotation" id="8818272836601088841">
                                <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601117929">
                                  <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601115588">
                                    <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601088858">
                                      <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601088846">
                                        <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="8818272836601088845" />
                                        <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOutputByLabelAndInput" id="8818272836601088850">
                                          <link role="label" targetNodeId="4629721268259790268" resolveInfo="beanClass" />
                                          <node role="inputNode" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601088853">
                                            <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8818272836601088852" />
                                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="8818272836601088857">
                                              <link role="link" targetNodeId="2v.9111793454351686732" />
                                            </node>
                                          </node>
                                        </node>
                                      </node>
                                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="8818272836601088862">
                                        <link role="link" targetNodeId="3v.1068390468201" />
                                      </node>
                                    </node>
                                    <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.WhereOperation" id="8818272836601115592">
                                      <node role="closure" type="jetbrains.mps.baseLanguage.closures.structure.ClosureLiteral" id="8818272836601115593">
                                        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836601115594">
                                          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836601115600">
                                            <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601117830">
                                              <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601115604">
                                                <node role="operand" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="8818272836601115601">
                                                  <link role="variableDeclaration" targetNodeId="8818272836601115595" resolveInfo="it" />
                                                </node>
                                                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="8818272836601117823">
                                                  <link role="link" targetNodeId="3v.1068580123134" />
                                                </node>
                                              </node>
                                              <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.IsEmptyOperation" id="8818272836601117839" />
                                            </node>
                                          </node>
                                        </node>
                                        <node role="parameter" type="jetbrains.mps.baseLanguage.collections.structure.SmartClosureParameterDeclaration" id="8818272836601115595">
                                          <property name="name" value="it" />
                                          <node role="type" type="jetbrains.mps.baseLanguage.structure.WildCardType" id="8818272836601115596" />
                                        </node>
                                      </node>
                                    </node>
                                  </node>
                                  <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.GetFirstOperation" id="8818272836601117952" />
                                </node>
                              </node>
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836600094808">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836600094810">
              <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="8818272836600094809">
                <link role="variableDeclaration" targetNodeId="8818272836600074811" resolveInfo="result" />
              </node>
              <node role="operation" type="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" id="8818272836600094815">
                <link role="baseMethodDeclaration" targetNodeId="8579527048878654460" resolveInfo="setter" />
                <node role="actualArgument" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="5190451870949196511">
                  <link role="variableDeclaration" targetNodeId="668809111076516494" resolveInfo="param1" />
                  <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="5190451870949196513">
                    <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="5190451870949196514">
                      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="5190451870949196515">
                        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="5190451870949196516">
                          <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5190451870949196520">
                            <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5190451870949196517" />
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="5190451870949196526">
                              <link role="link" targetNodeId="2v.609249696298086958" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
                <node role="referenceMacro$link_attribute$baseMethodDeclaration" type="jetbrains.mps.lang.generator.structure.ReferenceMacro" id="8818272836601340342">
                  <node role="referentFunction" type="jetbrains.mps.lang.generator.structure.ReferenceMacro_GetReferent" id="8818272836601340343">
                    <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836601340344">
                      <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="668809111076288541">
                        <node role="expression" type="jetbrains.mps.lang.smodel.structure.StaticConceptMethodCall" id="668809111076288542">
                          <link role="concept" targetNodeId="2v.4947839308727780236" resolveInfo="BeanDeclaration" />
                          <link role="baseMethodDeclaration" targetNodeId="5.8818272836601340312" resolveInfo="createSetter" />
                          <node role="actualArgument" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="668809111076290241">
                            <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="668809111076290231">
                              <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="668809111076290226" />
                              <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="668809111076290238">
                                <link role="link" targetNodeId="2v.609249696298086959" />
                              </node>
                            </node>
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="668809111076290246">
                              <link role="link" targetNodeId="2v.609249696298085744" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
            <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.LoopMacro" id="8818272836601218557">
              <node role="sourceNodesQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodesQuery" id="8818272836601218558">
                <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836601218559">
                  <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836601222753">
                    <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601222760">
                      <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836601222755">
                        <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8818272836601222754" />
                        <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="8818272836601222759">
                          <link role="link" targetNodeId="2v.9111793454351686731" />
                        </node>
                      </node>
                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="8818272836601223977">
                        <link role="link" targetNodeId="2v.400862818091828238" />
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ReturnStatement" id="8818272836600094805">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="8818272836600094807">
              <link role="variableDeclaration" targetNodeId="8818272836600074811" resolveInfo="result" />
            </node>
          </node>
        </node>
        <node role="templateFragment$attribute" type="jetbrains.mps.lang.generator.structure.TemplateFragment" id="8818272836600094825">
          <link role="labelDeclaration" targetNodeId="8818272836600509172" resolveInfo="beanCreationMethod" />
        </node>
        <node role="propertyMacro$property_attribute$name" type="jetbrains.mps.lang.generator.structure.PropertyMacro" id="8818272836600195552">
          <node role="propertyValueFunction" type="jetbrains.mps.lang.generator.structure.PropertyMacro_GetPropertyValue" id="8818272836600195553">
            <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="8818272836600195554">
              <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="8818272836600199748">
                <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836600199750">
                  <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="8818272836600199749" />
                  <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_CreateUniqueName" id="8818272836600199754">
                    <node role="baseName" type="jetbrains.mps.baseLanguage.structure.PlusExpression" id="8818272836600199757">
                      <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.StringLiteral" id="8818272836600199756">
                        <property name="value" value="create" />
                      </node>
                      <node role="rightExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836600199766">
                        <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="8818272836600199761">
                          <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="8818272836600199760" />
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="8818272836600199765">
                            <link role="link" targetNodeId="2v.9111793454351686732" />
                          </node>
                        </node>
                        <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="8818272836600199770">
                          <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
        <node role="parameter" type="jetbrains.mps.baseLanguage.structure.ParameterDeclaration" id="668809111076516494">
          <property name="name" value="param1" />
          <node role="type" type="jetbrains.mps.baseLanguage.structure.StringType" id="668809111076516495" />
          <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcListMacro" id="4097388089211921865">
            <node role="sourceNodesQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodesQuery" id="4097388089211921866">
              <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="4097388089211921867">
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="4097388089211926061">
                  <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="4097388089211926062">
                    <property name="name" value="result" />
                    <node role="type" type="jetbrains.mps.baseLanguage.collections.structure.ListType" id="4097388089211926063">
                      <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="4097388089211926065">
                        <link role="concept" targetNodeId="3v.1068498886292" resolveInfo="ParameterDeclaration" />
                      </node>
                    </node>
                    <node role="initializer" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="4097388089211926067">
                      <node role="creator" type="jetbrains.mps.baseLanguage.collections.structure.ListCreatorWithInit" id="4097388089211946055">
                        <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="4097388089211946057">
                          <link role="concept" targetNodeId="3v.1068498886292" resolveInfo="ParameterDeclaration" />
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="4097388089211946063">
                  <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="4097388089211946064">
                    <property name="name" value="unsortedVariables" />
                    <node role="type" type="jetbrains.mps.baseLanguage.collections.structure.ListType" id="4097388089211946065">
                      <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="4097388089211946067">
                        <link role="concept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                      </node>
                    </node>
                    <node role="initializer" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946087">
                      <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="4097388089211946088" />
                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_GetDescendantsOperation" id="4097388089211946089">
                        <node role="parameter" type="jetbrains.mps.lang.smodel.structure.OperationParm_Concept" id="4097388089211946090">
                          <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="4097388089211946091">
                            <link role="conceptDeclaration" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="2864897323178667243">
                  <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="2864897323178667244">
                    <property name="name" value="sortedVariables" />
                    <node role="type" type="jetbrains.mps.baseLanguage.collections.structure.SequenceType" id="2864897323178667245">
                      <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="2864897323178667249">
                        <link role="concept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                      </node>
                    </node>
                    <node role="initializer" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="2864897323178667260">
                      <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="2864897323178667261">
                        <link role="variableDeclaration" targetNodeId="4097388089211946064" resolveInfo="unsortedVariables" />
                      </node>
                      <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.SortOperation" id="2864897323178667262">
                        <node role="closure" type="jetbrains.mps.baseLanguage.closures.structure.ClosureLiteral" id="2864897323178667263">
                          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="2864897323178667264">
                            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="2864897323178667265">
                              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="2864897323178667266">
                                <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="2864897323178667267">
                                  <node role="operand" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="2864897323178667268">
                                    <link role="variableDeclaration" targetNodeId="2864897323178667271" resolveInfo="it" />
                                  </node>
                                  <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="2864897323178667269">
                                    <link role="link" targetNodeId="3v.1070568296581" />
                                  </node>
                                </node>
                                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="2864897323178667270">
                                  <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                                </node>
                              </node>
                            </node>
                          </node>
                          <node role="parameter" type="jetbrains.mps.baseLanguage.collections.structure.SmartClosureParameterDeclaration" id="2864897323178667271">
                            <property name="name" value="it" />
                            <node role="type" type="jetbrains.mps.baseLanguage.structure.WildCardType" id="2864897323178667272" />
                          </node>
                        </node>
                        <node role="ascending" type="jetbrains.mps.baseLanguage.collections.structure.SortDirection" id="2864897323178667273">
                          <property name="value" value="true" />
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
                <node role="statement" type="jetbrains.mps.baseLanguage.collections.structure.ForEachStatement" id="4097388089211946155">
                  <node role="variable" type="jetbrains.mps.baseLanguage.collections.structure.ForEachVariable" id="4097388089211946156">
                    <property name="name" value="variable" />
                  </node>
                  <node role="inputSequence" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="2864897323178667278">
                    <link role="variableDeclaration" targetNodeId="2864897323178667244" resolveInfo="sortedVariables" />
                  </node>
                  <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="4097388089211946158">
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="4097388089211946162">
                      <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="4097388089211946163">
                        <property name="name" value="param" />
                        <node role="type" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="4097388089211946164">
                          <link role="concept" targetNodeId="3v.1068498886292" resolveInfo="ParameterDeclaration" />
                        </node>
                        <node role="initializer" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="4097388089211946166">
                          <node role="creator" type="jetbrains.mps.lang.smodel.structure.SNodeCreator" id="4097388089211946168">
                            <node role="createdType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="4097388089211946169">
                              <link role="concept" targetNodeId="3v.1068498886292" resolveInfo="ParameterDeclaration" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="4097388089211946171">
                      <node role="expression" type="jetbrains.mps.baseLanguage.structure.AssignmentExpression" id="4097388089211946178">
                        <node role="rValue" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946200">
                          <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946193">
                            <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946184">
                              <node role="operand" type="jetbrains.mps.baseLanguage.collections.structure.ForEachVariableReference" id="4097388089211946181">
                                <link role="variable" targetNodeId="4097388089211946156" resolveInfo="variable" />
                              </node>
                              <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="4097388089211946190">
                                <link role="link" targetNodeId="3v.1070568296581" />
                              </node>
                            </node>
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="4097388089211946198">
                              <link role="link" targetNodeId="3v.5680397130376446158" />
                            </node>
                          </node>
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_CopyOperation" id="4097388089211946205" />
                        </node>
                        <node role="lValue" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946173">
                          <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="4097388089211946172">
                            <link role="variableDeclaration" targetNodeId="4097388089211946163" resolveInfo="param" />
                          </node>
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="4097388089211946177">
                            <link role="link" targetNodeId="3v.5680397130376446158" />
                          </node>
                        </node>
                      </node>
                    </node>
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="4097388089211946209">
                      <node role="expression" type="jetbrains.mps.baseLanguage.structure.AssignmentExpression" id="4097388089211946216">
                        <node role="lValue" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946211">
                          <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="4097388089211946210">
                            <link role="variableDeclaration" targetNodeId="4097388089211946163" resolveInfo="param" />
                          </node>
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="4097388089211946215">
                            <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                          </node>
                        </node>
                        <node role="rValue" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946233">
                          <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946222">
                            <node role="operand" type="jetbrains.mps.baseLanguage.collections.structure.ForEachVariableReference" id="4097388089211946219">
                              <link role="variable" targetNodeId="4097388089211946156" resolveInfo="variable" />
                            </node>
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="4097388089211946229">
                              <link role="link" targetNodeId="3v.1070568296581" />
                            </node>
                          </node>
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="4097388089211946239">
                            <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                          </node>
                        </node>
                      </node>
                    </node>
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="4097388089211946243">
                      <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4097388089211946245">
                        <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="4097388089211946244">
                          <link role="variableDeclaration" targetNodeId="4097388089211926062" resolveInfo="result" />
                        </node>
                        <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.AddElementOperation" id="4097388089211946249">
                          <node role="argument" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="4097388089211946253">
                            <link role="variableDeclaration" targetNodeId="4097388089211946163" resolveInfo="param" />
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.ReturnStatement" id="4097388089211946060">
                  <node role="expression" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="4097388089211946062">
                    <link role="variableDeclaration" targetNodeId="4097388089211926062" resolveInfo="result" />
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="propertyMacro$property_attribute$name" type="jetbrains.mps.lang.generator.structure.PropertyMacro" id="5190451870949408052">
            <node role="propertyValueFunction" type="jetbrains.mps.lang.generator.structure.PropertyMacro_GetPropertyValue" id="5190451870949408053">
              <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="5190451870949408054">
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="5190451870949412248">
                  <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="5190451870949412253">
                    <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="5190451870949412249" />
                    <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="5190451870949412260">
                      <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="8818272836599418013" />
    </node>
  </node>
  <node type="jetbrains.mps.lang.generator.structure.TemplateDeclaration" id="3790509900283270406">
    <property name="name" value="reduce_PropertyAccessOperation_Getter" />
    <link role="applicableConcept" targetNodeId="2v.2810096565406086130" resolveInfo="PropertyAccessOperation" />
    <node role="contentNode" type="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" id="3790509900283373212">
      <property name="name" value="dummy" />
      <node role="returnType" type="jetbrains.mps.baseLanguage.structure.VoidType" id="3790509900283373213" />
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="3790509900283373214" />
      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900283373215">
        <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="3790509900283377409">
          <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="3790509900283377410">
            <property name="name" value="class" />
            <node role="type" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="3790509900283377411">
              <link role="classifier" targetNodeId="366883146281888133" resolveInfo="BeanClass" />
            </node>
            <node role="initializer" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="3790509900283377416">
              <node role="creator" type="jetbrains.mps.baseLanguage.structure.ClassCreator" id="3790509900283377417">
                <link role="baseMethodDeclaration" targetNodeId="366883146281888135" resolveInfo="BeanClass" />
              </node>
            </node>
          </node>
        </node>
        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900283377419">
          <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900283377421">
            <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="3790509900283377420">
              <link role="variableDeclaration" targetNodeId="3790509900283377410" resolveInfo="class" />
            </node>
            <node role="operation" type="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" id="3790509900283377425">
              <link role="baseMethodDeclaration" targetNodeId="8579527048878654601" resolveInfo="getter" />
              <node role="templateFragment$attribute" type="jetbrains.mps.lang.generator.structure.TemplateFragment" id="3790509900283377426" />
              <node role="referenceMacro$link_attribute$baseMethodDeclaration" type="jetbrains.mps.lang.generator.structure.ReferenceMacro" id="3790509900283480214">
                <node role="referentFunction" type="jetbrains.mps.lang.generator.structure.ReferenceMacro_GetReferent" id="3790509900283480215">
                  <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900283480216">
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900283484410">
                      <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900283484412">
                        <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="3790509900283484411" />
                        <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOutputByLabelAndInput" id="3790509900283484416">
                          <link role="label" targetNodeId="5965199080352902068" resolveInfo="beanGetter" />
                          <node role="inputNode" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900283484419">
                            <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900283484418" />
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900283484423">
                              <link role="link" targetNodeId="2v.2810096565406086132" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
    </node>
  </node>
  <node type="jetbrains.mps.lang.generator.structure.TemplateDeclaration" id="3790509900286076372">
    <property name="name" value="reduce_AssignmentExpression_Setter" />
    <link role="applicableConcept" targetNodeId="3v.1068498886294" resolveInfo="AssignmentExpression" />
    <node role="contentNode" type="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" id="3790509900286076375">
      <property name="name" value="dummy" />
      <node role="returnType" type="jetbrains.mps.baseLanguage.structure.VoidType" id="3790509900286076376" />
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="3790509900286076377" />
      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286076378">
        <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="3790509900286076379">
          <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="3790509900286076380">
            <property name="name" value="class" />
            <node role="type" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="3790509900286076381">
              <link role="classifier" targetNodeId="366883146281888133" resolveInfo="BeanClass" />
            </node>
            <node role="initializer" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="3790509900286076383">
              <node role="creator" type="jetbrains.mps.baseLanguage.structure.ClassCreator" id="3790509900286076384">
                <link role="baseMethodDeclaration" targetNodeId="366883146281888135" resolveInfo="BeanClass" />
              </node>
            </node>
          </node>
        </node>
        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286076386">
          <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286076388">
            <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="3790509900286076387">
              <link role="variableDeclaration" targetNodeId="3790509900286076380" resolveInfo="class" />
              <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="3790509900286076438">
                <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="3790509900286076439">
                  <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286076440">
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286076441">
                      <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286076453">
                        <node role="operand" type="jetbrains.mps.lang.smodel.structure.SNodeTypeCastExpression" id="3790509900286076449">
                          <link role="concept" targetNodeId="3v.1197027756228" resolveInfo="DotExpression" />
                          <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286076450">
                            <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900286076451" />
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286076452">
                              <link role="link" targetNodeId="3v.1068498886295" />
                            </node>
                          </node>
                        </node>
                        <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286076457">
                          <link role="link" targetNodeId="3v.1197027771414" />
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
            <node role="operation" type="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" id="3790509900286076392">
              <link role="baseMethodDeclaration" targetNodeId="8579527048878654460" resolveInfo="setter" />
              <node role="actualArgument" type="jetbrains.mps.baseLanguage.structure.StringLiteral" id="3790509900286076393">
                <property name="value" value="value" />
                <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="3790509900286076396">
                  <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="3790509900286076397">
                    <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286076398">
                      <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286076399">
                        <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286076401">
                          <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900286076400" />
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286076405">
                            <link role="link" targetNodeId="3v.1068498886297" />
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
              <node role="referenceMacro$link_attribute$baseMethodDeclaration" type="jetbrains.mps.lang.generator.structure.ReferenceMacro" id="3790509900286076406">
                <node role="referentFunction" type="jetbrains.mps.lang.generator.structure.ReferenceMacro_GetReferent" id="3790509900286076407">
                  <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286076408">
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286076409">
                      <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286076411">
                        <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="3790509900286076410" />
                        <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOutputByLabelAndInput" id="3790509900286076415">
                          <link role="label" targetNodeId="5965199080352902069" resolveInfo="beanSetter" />
                          <node role="inputNode" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286076432">
                            <node role="operand" type="jetbrains.mps.lang.smodel.structure.SNodeTypeCastExpression" id="3790509900286076430">
                              <link role="concept" targetNodeId="2v.2810096565406086130" resolveInfo="PropertyAccessOperation" />
                              <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286076425">
                                <node role="operand" type="jetbrains.mps.lang.smodel.structure.SNodeTypeCastExpression" id="3790509900286076423">
                                  <link role="concept" targetNodeId="3v.1197027756228" resolveInfo="DotExpression" />
                                  <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286076418">
                                    <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900286076417" />
                                    <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286076422">
                                      <link role="link" targetNodeId="3v.1068498886295" />
                                    </node>
                                  </node>
                                </node>
                                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286076429">
                                  <link role="link" targetNodeId="3v.1197027833540" />
                                </node>
                              </node>
                            </node>
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286076436">
                              <link role="link" targetNodeId="2v.2810096565406086132" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
            <node role="templateFragment$attribute" type="jetbrains.mps.lang.generator.structure.TemplateFragment" id="3790509900286076394" />
          </node>
        </node>
      </node>
    </node>
  </node>
  <node type="jetbrains.mps.lang.generator.structure.TemplateDeclaration" id="3790509900286517991">
    <property name="name" value="weave_BeanCreation_methods_alternative" />
    <link role="applicableConcept" targetNodeId="2v.9111793454351686730" resolveInfo="BeanCreator" />
    <node role="contentNode" type="jetbrains.mps.baseLanguage.structure.ClassConcept" id="3790509900286522508">
      <property name="name" value="_noname_" />
      <node role="method" type="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" id="3790509900286522514">
        <property name="name" value="creationMethod" />
        <node role="returnType" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="3790509900286522515">
          <link role="classifier" targetNodeId="366883146281888133" resolveInfo="BeanClass" />
          <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="3790509900286522516">
            <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="3790509900286522517">
              <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286522518">
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286522519">
                  <node role="expression" type="jetbrains.mps.lang.quotation.structure.Quotation" id="3790509900286522520">
                    <node role="quotedNode" type="de.compago.mps.bean_ext.structure.BeanType" id="3790509900286522521">
                      <node role="referenceAntiquotation$link_attribute$bean" type="jetbrains.mps.lang.quotation.structure.ReferenceAntiquotation" id="3790509900286522522">
                        <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286522523">
                          <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900286522524" />
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286522525">
                            <link role="link" targetNodeId="2v.9111793454351686732" />
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
        <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="3790509900286522526" />
        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286522527">
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="3790509900286522528">
            <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="3790509900286522529">
              <property name="name" value="result" />
              <node role="type" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="3790509900286522530">
                <link role="classifier" targetNodeId="366883146281888133" resolveInfo="BeanClass" />
                <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="3790509900287058559">
                  <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="3790509900287058560">
                    <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900287058561">
                      <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900287058562">
                        <node role="expression" type="jetbrains.mps.lang.quotation.structure.Quotation" id="3790509900287058563">
                          <node role="quotedNode" type="de.compago.mps.bean_ext.structure.BeanType" id="3790509900287058564">
                            <node role="referenceAntiquotation$link_attribute$bean" type="jetbrains.mps.lang.quotation.structure.ReferenceAntiquotation" id="3790509900287058565">
                              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287058566">
                                <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900287058567" />
                                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900287058568">
                                  <link role="link" targetNodeId="2v.9111793454351686732" />
                                </node>
                              </node>
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
              <node role="initializer" type="jetbrains.mps.baseLanguage.structure.GenericNewExpression" id="3790509900286522531">
                <node role="creator" type="jetbrains.mps.baseLanguage.structure.ClassCreator" id="3790509900286522532">
                  <link role="baseMethodDeclaration" targetNodeId="366883146281888135" resolveInfo="BeanClass" />
                  <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="3790509900287058571">
                    <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="3790509900287058572">
                      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900287058573">
                        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900287058574">
                          <node role="expression" type="jetbrains.mps.lang.quotation.structure.Quotation" id="3790509900287058575">
                            <node role="quotedNode" type="jetbrains.mps.baseLanguage.structure.ClassCreator" id="3790509900287058576">
                              <node role="referenceAntiquotation$link_attribute$baseMethodDeclaration" type="jetbrains.mps.lang.quotation.structure.ReferenceAntiquotation" id="3790509900287058577">
                                <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287058578">
                                  <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287058579">
                                    <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287058580">
                                      <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287058581">
                                        <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="3790509900287058582" />
                                        <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOutputByLabelAndInput" id="3790509900287058583">
                                          <link role="label" targetNodeId="4629721268259790268" resolveInfo="beanClass" />
                                          <node role="inputNode" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287058584">
                                            <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900287058585" />
                                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900287058586">
                                              <link role="link" targetNodeId="2v.9111793454351686732" />
                                            </node>
                                          </node>
                                        </node>
                                      </node>
                                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="3790509900287058587">
                                        <link role="link" targetNodeId="3v.1068390468201" />
                                      </node>
                                    </node>
                                    <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.WhereOperation" id="3790509900287058588">
                                      <node role="closure" type="jetbrains.mps.baseLanguage.closures.structure.ClosureLiteral" id="3790509900287058589">
                                        <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900287058590">
                                          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900287058591">
                                            <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287058592">
                                              <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287058593">
                                                <node role="operand" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="3790509900287058594">
                                                  <link role="variableDeclaration" targetNodeId="3790509900287058597" resolveInfo="it" />
                                                </node>
                                                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="3790509900287058595">
                                                  <link role="link" targetNodeId="3v.1068580123134" />
                                                </node>
                                              </node>
                                              <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.IsEmptyOperation" id="3790509900287058596" />
                                            </node>
                                          </node>
                                        </node>
                                        <node role="parameter" type="jetbrains.mps.baseLanguage.collections.structure.SmartClosureParameterDeclaration" id="3790509900287058597">
                                          <property name="name" value="it" />
                                          <node role="type" type="jetbrains.mps.baseLanguage.structure.WildCardType" id="3790509900287058598" />
                                        </node>
                                      </node>
                                    </node>
                                  </node>
                                  <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.GetFirstOperation" id="3790509900287058599" />
                                </node>
                              </node>
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286522533">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286522534">
              <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="3790509900286522535">
                <link role="variableDeclaration" targetNodeId="3790509900286522529" resolveInfo="result" />
              </node>
              <node role="operation" type="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" id="3790509900286522536">
                <link role="baseMethodDeclaration" targetNodeId="8579527048878654460" resolveInfo="setter" />
                <node role="actualArgument" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="3790509900286522537">
                  <link role="variableDeclaration" targetNodeId="3790509900286522540" resolveInfo="param" />
                  <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="4012504259766510268">
                    <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="4012504259766510269">
                      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="4012504259766510270">
                        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="4012504259766510271">
                          <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="4012504259766510275">
                            <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="4012504259766510272" />
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="4012504259766510282">
                              <link role="link" targetNodeId="2v.609249696298086958" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
                <node role="referenceMacro$link_attribute$baseMethodDeclaration" type="jetbrains.mps.lang.generator.structure.ReferenceMacro" id="3790509900287170194">
                  <node role="referentFunction" type="jetbrains.mps.lang.generator.structure.ReferenceMacro_GetReferent" id="3790509900287170195">
                    <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900287170196">
                      <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900287170197">
                        <node role="expression" type="jetbrains.mps.lang.smodel.structure.StaticConceptMethodCall" id="3790509900287170198">
                          <link role="baseMethodDeclaration" targetNodeId="5.8818272836601340312" resolveInfo="createSetter" />
                          <link role="concept" targetNodeId="2v.4947839308727780236" resolveInfo="BeanDeclaration" />
                          <node role="actualArgument" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287170199">
                            <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287170200">
                              <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900287170201" />
                              <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900287170202">
                                <link role="link" targetNodeId="2v.609249696298086959" />
                              </node>
                            </node>
                            <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900287170203">
                              <link role="link" targetNodeId="2v.609249696298085744" />
                            </node>
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
            <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.LoopMacro" id="3790509900287166735">
              <node role="sourceNodesQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodesQuery" id="3790509900287166736">
                <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900287166737">
                  <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900287168969">
                    <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287168976">
                      <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900287168971">
                        <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900287168970" />
                        <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900287168975">
                          <link role="link" targetNodeId="2v.9111793454351686731" />
                        </node>
                      </node>
                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkListAccess" id="3790509900287170193">
                        <link role="link" targetNodeId="2v.400862818091828238" />
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="statement" type="jetbrains.mps.baseLanguage.structure.ReturnStatement" id="3790509900286522538">
            <node role="expression" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="3790509900286522539">
              <link role="variableDeclaration" targetNodeId="3790509900286522529" resolveInfo="result" />
            </node>
          </node>
        </node>
        <node role="parameter" type="jetbrains.mps.baseLanguage.structure.ParameterDeclaration" id="3790509900286522540">
          <property name="name" value="param" />
          <node role="type" type="jetbrains.mps.baseLanguage.structure.ClassifierType" id="3790509900286522541">
            <link role="classifier" targetNodeId="2.~Object" resolveInfo="Object" />
            <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.CopySrcNodeMacro" id="3790509900286843075">
              <node role="sourceNodeQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" id="3790509900286843076">
                <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286843077">
                  <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286845256">
                    <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286846485">
                      <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286845260">
                        <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900286845257" />
                        <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286846483">
                          <link role="link" targetNodeId="3v.1070568296581" />
                        </node>
                      </node>
                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286846489">
                        <link role="link" targetNodeId="3v.5680397130376446158" />
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="nodeMacro$attribute" type="jetbrains.mps.lang.generator.structure.LoopMacro" id="3790509900286735382">
            <node role="sourceNodesQuery" type="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodesQuery" id="3790509900286735383">
              <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286735384">
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="3790509900286735385">
                  <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="3790509900286735386">
                    <property name="name" value="unsortedVariables" />
                    <node role="type" type="jetbrains.mps.baseLanguage.collections.structure.ListType" id="3790509900286735387">
                      <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="3790509900286735388">
                        <link role="concept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                      </node>
                    </node>
                    <node role="initializer" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286735389">
                      <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900286735390" />
                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.Node_GetDescendantsOperation" id="3790509900286735391">
                        <node role="parameter" type="jetbrains.mps.lang.smodel.structure.OperationParm_Concept" id="3790509900286735392">
                          <node role="conceptArgument" type="jetbrains.mps.lang.smodel.structure.RefConcept_Reference" id="3790509900286735393">
                            <link role="conceptDeclaration" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                          </node>
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" id="2864897323178667312">
                  <node role="localVariableDeclaration" type="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" id="2864897323178667313">
                    <property name="name" value="sortedVariables" />
                    <node role="type" type="jetbrains.mps.baseLanguage.collections.structure.SequenceType" id="2864897323178667314">
                      <node role="elementType" type="jetbrains.mps.lang.smodel.structure.SNodeType" id="2864897323178667320">
                        <link role="concept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
                      </node>
                    </node>
                    <node role="initializer" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="2864897323178667339">
                      <node role="operand" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="2864897323178667340">
                        <link role="variableDeclaration" targetNodeId="3790509900286735386" resolveInfo="unsortedVariables" />
                      </node>
                      <node role="operation" type="jetbrains.mps.baseLanguage.collections.structure.SortOperation" id="2864897323178667341">
                        <node role="closure" type="jetbrains.mps.baseLanguage.closures.structure.ClosureLiteral" id="2864897323178667342">
                          <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="2864897323178667343">
                            <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="2864897323178667344">
                              <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="2864897323178667345">
                                <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="2864897323178667346">
                                  <node role="operand" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="2864897323178667347">
                                    <link role="variableDeclaration" targetNodeId="2864897323178667350" resolveInfo="it" />
                                  </node>
                                  <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="2864897323178667348">
                                    <link role="link" targetNodeId="3v.1070568296581" />
                                  </node>
                                </node>
                                <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="2864897323178667349">
                                  <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                                </node>
                              </node>
                            </node>
                          </node>
                          <node role="parameter" type="jetbrains.mps.baseLanguage.collections.structure.SmartClosureParameterDeclaration" id="2864897323178667350">
                            <property name="name" value="it" />
                            <node role="type" type="jetbrains.mps.baseLanguage.structure.WildCardType" id="2864897323178667351" />
                          </node>
                        </node>
                        <node role="ascending" type="jetbrains.mps.baseLanguage.collections.structure.SortDirection" id="2864897323178667352">
                          <property name="value" value="true" />
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.ReturnStatement" id="3790509900286737574">
                  <node role="expression" type="jetbrains.mps.baseLanguage.structure.LocalVariableReference" id="2864897323178667361">
                    <link role="variableDeclaration" targetNodeId="2864897323178667313" resolveInfo="sortedVariables" />
                  </node>
                </node>
              </node>
            </node>
          </node>
          <node role="propertyMacro$property_attribute$name" type="jetbrains.mps.lang.generator.structure.PropertyMacro" id="3790509900286950793">
            <node role="propertyValueFunction" type="jetbrains.mps.lang.generator.structure.PropertyMacro_GetPropertyValue" id="3790509900286950794">
              <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286950795">
                <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286952974">
                  <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286954199">
                    <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286952978">
                      <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900286952975" />
                      <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286954197">
                        <link role="link" targetNodeId="3v.1070568296581" />
                      </node>
                    </node>
                    <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="3790509900286954203">
                      <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
        <node role="templateFragment$attribute" type="jetbrains.mps.lang.generator.structure.TemplateFragment" id="3790509900286522542">
          <link role="labelDeclaration" targetNodeId="8818272836600509172" resolveInfo="beanCreationMethod" />
        </node>
        <node role="propertyMacro$property_attribute$name" type="jetbrains.mps.lang.generator.structure.PropertyMacro" id="3790509900286630035">
          <node role="propertyValueFunction" type="jetbrains.mps.lang.generator.structure.PropertyMacro_GetPropertyValue" id="3790509900286630036">
            <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="3790509900286630037">
              <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="3790509900286630038">
                <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286630039">
                  <node role="operand" type="jetbrains.mps.lang.generator.generationContext.structure.TemplateFunctionParameter_generationContext" id="3790509900286630040" />
                  <node role="operation" type="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_CreateUniqueName" id="3790509900286630041">
                    <node role="baseName" type="jetbrains.mps.baseLanguage.structure.PlusExpression" id="3790509900286630042">
                      <node role="leftExpression" type="jetbrains.mps.baseLanguage.structure.StringLiteral" id="3790509900286630043">
                        <property name="value" value="create" />
                      </node>
                      <node role="rightExpression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286630044">
                        <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="3790509900286630045">
                          <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="3790509900286630046" />
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="3790509900286630047">
                            <link role="link" targetNodeId="2v.9111793454351686732" />
                          </node>
                        </node>
                        <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="3790509900286630048">
                          <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
          </node>
        </node>
      </node>
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="3790509900286522509" />
    </node>
  </node>
  <node type="jetbrains.mps.lang.generator.structure.TemplateDeclaration" id="4012504259766621588">
    <property name="name" value="reduce_LocalVariableDeclaration_param" />
    <link role="applicableConcept" targetNodeId="3v.1068581242866" resolveInfo="LocalVariableReference" />
    <node role="contentNode" type="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" id="9162224485038796344">
      <property name="name" value="dummyMethod" />
      <node role="parameter" type="jetbrains.mps.baseLanguage.structure.ParameterDeclaration" id="9162224485038796348">
        <property name="name" value="myParam" />
        <node role="type" type="jetbrains.mps.baseLanguage.structure.StringType" id="9162224485038796350" />
      </node>
      <node role="returnType" type="jetbrains.mps.baseLanguage.structure.VoidType" id="9162224485038796345" />
      <node role="visibility" type="jetbrains.mps.baseLanguage.structure.PublicVisibility" id="9162224485038796346" />
      <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="9162224485038796347">
        <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="9162224485038796351">
          <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038796353">
            <node role="operand" type="jetbrains.mps.baseLanguage.structure.ParameterReference" id="9162224485038796352">
              <link role="variableDeclaration" targetNodeId="9162224485038796348" resolveInfo="myParam" />
              <node role="templateFragment$attribute" type="jetbrains.mps.lang.generator.structure.TemplateFragment" id="9162224485038796358" />
              <node role="referenceMacro$link_attribute$variableDeclaration" type="jetbrains.mps.lang.generator.structure.ReferenceMacro" id="9162224485038796359">
                <node role="referentFunction" type="jetbrains.mps.lang.generator.structure.ReferenceMacro_GetReferent" id="9162224485038796360">
                  <node role="body" type="jetbrains.mps.baseLanguage.structure.StatementList" id="9162224485038796361">
                    <node role="statement" type="jetbrains.mps.baseLanguage.structure.ExpressionStatement" id="9162224485038796362">
                      <node role="expression" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038796363">
                        <node role="operand" type="jetbrains.mps.baseLanguage.structure.DotExpression" id="9162224485038796364">
                          <node role="operand" type="jetbrains.mps.lang.generator.structure.TemplateFunctionParameter_sourceNode" id="9162224485038796365" />
                          <node role="operation" type="jetbrains.mps.lang.smodel.structure.SLinkAccess" id="9162224485038796366">
                            <link role="link" targetNodeId="3v.1070568296581" />
                          </node>
                        </node>
                        <node role="operation" type="jetbrains.mps.lang.smodel.structure.SPropertyAccess" id="9162224485038796367">
                          <link role="property" targetNodeId="4v.1169194664001" resolveInfo="name" />
                        </node>
                      </node>
                    </node>
                  </node>
                </node>
              </node>
            </node>
            <node role="operation" type="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" id="9162224485038796357">
              <link role="baseMethodDeclaration" targetNodeId="2.~String.toString():java.lang.String" resolveInfo="toString" />
            </node>
          </node>
        </node>
      </node>
    </node>
  </node>
</model>

